type
Post
status
Published
date
Apr 8, 2023
slug
宝可梦检测与分类系统的设计与实现 yolov7 classification灵车
summary
宝可梦检测与分类系统的设计与实现 yolov7 classification灵车
tags
AI
category
技术分享
icon
password
唐承捷 201901512330
背景
假设你是一个新晋
训练师 ,对Pokemon不太熟悉
你打开了小田卷博士给你的宝可梦图鉴,却发现需要你自行进行登记

于是你决定开发一种新的图鉴,能够直接通过摄像头获得你所看到的宝可梦的信息
yolo classification 灵车
主要取决于数据集,手动标注数据集太过枯燥,因此直接使用现有数据集进行分类任务,而当前所找到的数据集均为Classification数据集,不包含位置信息,因此yolo无法学习到bounding box信息。
任务分类是特殊的目标检测,更为简化

训练
loss

过拟合,遂放弃
1. 感觉针对实物图片训练得到的weight不适合虚拟形象
2. 使用预训练模型没有在开始时就得到很好的效果

预训练模型似乎不能起到很好的效果,改而重新进行训练。
简化模型
感觉默认的模型深度和宽度对这个小任务都太过庞大,需要很大量的数据集才能够喂饱,因此一开始尝试修改
depth_multiple 和 width_multiple 为0.3-0.5,但在前10个epoch没有看到明显效果,遂放弃。同时降低classes从150类到22类,作为验证。
why not faster
使用多GPU训练
数据增强
yolo训练时似乎进行了一定的数据增强,对图片进行叠加覆盖、截取后识别。

Stage1 epoch300
小规模测试

Stage2 150 classes 1000epoch
全类别训练

Stage3 150 classes 继续2000epoch
约800 epoch时候无法获得性能提升


pattern
开始的loss爆炸是什么原因?
检测

图片中必须出现已有宝可梦,否则会乱猜?
可能loss函数使得该情况下总loss最低但召回率提高,因此模型学到了瞎蒙的策略。

Refer
yolov7
WongKinYiu • Updated Aug 30, 2023